﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AvaProvi
{
    class clsAnalisisCapitalizacionRentas_CD
    {
         private dsInmoviliario dsInmoviliario;
        private dsInmoviliarioTableAdapters.ACapitalizacionTableAdapter TAAnalisisCapitalizacion;

        public clsAnalisisCapitalizacionRentas_CD()
        {
            dsInmoviliario = new dsInmoviliario();
            dsInmoviliario.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
            dsInmoviliario.DataSetName = "dsInmoviliario";

            //se le debe pasar la conección
            TAAnalisisCapitalizacion = new AvaProvi.dsInmoviliarioTableAdapters.ACapitalizacionTableAdapter();
            TAAnalisisCapitalizacion.ClearBeforeFill = true;
        }

        public dsInmoviliario.ACapitalizacionRow ObtieneAnalisis(int IDAvaluo)
        {
            TAAnalisisCapitalizacion.RecuperaAnalisis(this.dsInmoviliario.ACapitalizacion, IDAvaluo);
            foreach (dsInmoviliario.ACapitalizacionRow filaAnalisis in this.dsInmoviliario.ACapitalizacion)
            {
                return filaAnalisis;
            }
            return null;
        }

        public bool CreaNuevoAnalisis(clsAnalisisCapitalizacionRentas_CRN objAnalisis)
        {
            int registrosAfectados = TAAnalisisCapitalizacion.NuevoAnalisis(
                objAnalisis.Terreno.Inmueble.Avaluo.IdAvaluo,
                objAnalisis.SupAccesoriaRentaM2,
                objAnalisis.Vacios,
                objAnalisis.Administracion,
                objAnalisis.AniosConservacion,
                objAnalisis.PorcentajeConservacion,
                objAnalisis.Predial,
                objAnalisis.Seguro,
                objAnalisis.DepreciacionFiscal,
                objAnalisis.DeduccionOpcional,
                objAnalisis.TIIE,
                objAnalisis.InflacionEstimada,
                objAnalisis.AnioActual,
                objAnalisis.AnioAnterior,
                objAnalisis.Fuente,
                objAnalisis.Fecha,
                objAnalisis.INPC,
                objAnalisis.LinkFuente,
                objAnalisis.Observaciones,
                objAnalisis.TipoDePersona);
            return registrosAfectados == 0 ? false : true;
        }

        public bool ModificaAnalisis(clsAnalisisCapitalizacionRentas_CRN objAnalisis)
        {
            int registrosAfectados = TAAnalisisCapitalizacion.ActualizaAnalisis(                
                objAnalisis.SupAccesoriaRentaM2,
                objAnalisis.Vacios,
                objAnalisis.Administracion,
                objAnalisis.AniosConservacion,
                objAnalisis.PorcentajeConservacion,
                objAnalisis.Predial,
                objAnalisis.Seguro,
                objAnalisis.DepreciacionFiscal,
                objAnalisis.DeduccionOpcional,
                objAnalisis.TIIE,
                objAnalisis.InflacionEstimada,
                objAnalisis.AnioActual,
                objAnalisis.AnioAnterior,
                objAnalisis.Fuente,
                objAnalisis.Fecha,
                objAnalisis.INPC,
                objAnalisis.LinkFuente,
                objAnalisis.Observaciones,
                objAnalisis.TipoDePersona,
                objAnalisis.Terreno.Inmueble.Avaluo.IdAvaluo);
            return registrosAfectados == 0 ? false : true;
        }

        public bool EliminaAnalisis(clsAnalisisCapitalizacionRentas_CRN objAnalisis)
        {
            int registrosAfectados = TAAnalisisCapitalizacion.EliminaAnalisis(
                objAnalisis.Terreno.Inmueble.Avaluo.IdAvaluo);
            return registrosAfectados == 0 ? false : true;
        }
    }
}
